Developer Documentation
PATH  Mac OS X Documentation > Developer Tools > Mac OS X Assembler Guide


Previous | Contents | Next

S

 

Name      
Operator      
Operand         
Operation Name         

sahf

sahf

 

Store AH into Flags

 

 

 

 

sal/sar/shl/shr

Shift Instructions

 

sal

1, r/m8

 

 

sal

%cl , r/m8

 

 

sal

$ imm8,r/m8

 

 

sal

1, r/m16

 

 

sal

%cl , r/m16

 

 

sal

$ imm8,r/m16

 

 

sal

1, r/m32

 

 

sal

%cl , r/m32

 

 

sal

$ imm8,r/m32

 

 

sar

1, r/m8

 

 

sar

%cl , r/m8

 

 

sar

$ imm8,r/m8

 

 

sar

1, r/m16

 

 

sar

%cl , r/m16

 

 

sar

$ imm8,r/m16

 

 

sar

1, r/m32

 

 

sar

%cl , r/m32

 

 

sar

$ imm8,r/m32

 

 

shl

1, r/m8

 

 

shl

%cl , r/m8

 

 

shl

$ imm8,r/m8

 

 

shl

1, r/m16

 

 

shl

%cl , r/m16

 

 

shl

$ imm8,r/m16

 

 

shl

1, r/m32

 

 

shl

%cl , r/m32

 

 

shl

$ imm8,r/m32

 

 

shr

1, r/m8

 

 

shr

%cl , r/m8

 

 

shr

$ imm8,r/m8

 

 

shr

1, r/m16

 

 

shr

%cl , r/m16

 

 

shr

$ imm8,r/m16

 

 

shr

1, r/m32

 

 

shr

%cl , r/m32

 

 

shr

$ imm8,r/m32

 

 

 

 

 

sbb

sbb

$ imm8,r/m8

Integer Subtraction with Borrow

 

sbb

$ imm16,r/m 16

 

 

sbb

$ imm32,r/m32

 

 

sbb

$ imm8,r/m16

 

 

sbb

$ imm8,r/m32

 

 

sbb

r8,r/m8

 

 

sbb

r16,r/m16

 

 

sbb

r32,r/m32

 

 

sbb

r/m8,r8

 

 

sbb

r/m16,r16

 

 

sbb

r/m32,r32

 

 

 

 

 

scas/scasb/scasw/scasd

Compare String Data

 

scas

m8

 

 

scas

m16

 

 

scas

m32

 

 

scasb

 

 

 

scasw

 

 

 

scasd

 

 

 

 

 

 

 

(optional forms with segment override)

 

scasb

%al, %seg :0(%edi)

 

 

scasw

%ax, %seg :0(%edi)

 

 

scasd

%eax, %seg :0(%edi)

 

 

 

 

 

set cc

 

 

Byte Set on Condition

 

seta

r/m8

above

 

setae

r/m8

above or equal

 

setb

r/m8

below

 

setbe

r/m8

below or equal

 

setc

r/m8

carry

 

sete

r/m8

equal

 

setg

r/m8

greater

 

setge

r/m8

greater or equal

 

setl

r/m8

less

 

setle

r/m8

less or equal

 

setna

r/m8

not above

 

setnae

r/m8

not abover or equal

 

setnb

r/m8

not below

 

setnbe

r/m8

not below or equal

 

setnc

r/m8

not carry

 

setne

r/m8

not equal

 

setng

r/m8

not greater

 

setnge

r/m8

not greater or equal

 

setnl

r/m8

not less

 

setnle

r/m8

not less or equal

 

setno

r/m8

not overflow

 

setnp

r/m8

not parity

 

setns

r/m8

not sign

 

setnz

r/m8

not zero

 

seto

r/m8

overflow

 

setp

r/m8

parity

 

setpe

r/m8

parity even

 

setpo

r/m8

parity odd

 

sets

r/m8

sign

 

setz

r/m8

zero

 

 

 

 

sgdt/sidt

sgdt

m

Store Global/Interrupt

 

sidt

m

Descriptor Table Register

 

 

 

 

shld

shld

$ imm8,r16,r/m16

Double Precision Shift Left

 

shld

$ imm8,r32,r/m32

 

 

shld

%cl , r16,r/m16

 

 

shld

%cl , r32,r/m32

 

 

 

 

 

shrd

shrd

$ imm8,r16,r/m16

Double Precision Shift Right

 

shrd

$ imm8,r32,r/m32

 

 

shrd

%cl , r16,r/m16

 

 

shrd

%cl , r32,r/m32

 

 

 

 

 

sldt

sldt

r/m16

Store Local Descriptor Table Register

 

 

 

 

smsw

smsw

r/m16

Store Machine Status Word

 

 

 

 

stc

stc

 

Set Carry Flag

 

 

 

 

 

 

 

 

std

std

 

Set Direction Flag

 

 

 

 

sti

sti

 

Set Interrupt Flag

 

 

 

 

stos/stosb/stosw/stosd

Store String Data

 

stos

m8

 

 

stos

m16

 

 

stos

m32

 

 

stosb

 

 

 

stosw

 

 

 

stosd

 

 

 

(optional forms with segment override)

 

stosb

%al, %seg :0(%edi)

 

 

stosw

%ax, %seg :0(%edi)

 

 

stosd

%eax, %seg :0(%edi)

 

 

 

 

 

str

str

r/m16

Store Task Register

 

 

 

 

sub

sub

$ imm8,r/m8

Integer Subtraction

 

sub

$ imm16,r/m 16

 

 

sub

$ imm32,r/m32

 

 

sub

$ imm8,r/m16

 

 

sub

$ imm8,r/m32

 

 

sub

r8,r/m8

 

 

sub

r16,r/m16

 

 

sub

r32,r/m32

 

 

sub

r/m8,r8

 

 

sub

r/m16,r16

 

 

sub

r/m32,r32

 


Mac OS X Assembler Reference: i386 Addressing Modes and Assembler Instructions

Previous | Contents | Next